package dao;

import java.util.ArrayList;
import java.util.Iterator;

import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Query;

import model.Fornecedor;

@NamedQueries({ @NamedQuery(name = "Consulta", query = "") })
public class FornecedorDAO extends DaoGenerico<Fornecedor> {

	// Constulta1
	public ArrayList<String> fornecedorPorCategoria(String categoria) {
		Query query = entityManager
				.createQuery("select fd.fornecedorNomeEmpresa as empresa, fd.fornecedorNomeVendedor as vendedor from Produto p inner join p.fornecimentos f , Fornecimento ft, Fornecedor fd where f.id = ft.id and ft.id = fd.id and p.proCategoria = '"
						+ categoria + "'");

		@SuppressWarnings("unchecked")
		Iterator<Object[]> iterator = query.getResultList().iterator();
		ArrayList<String> resultados = new ArrayList<String>();

		while (iterator.hasNext() || resultados.size() < 3) {
			Object[] obj = iterator.next();
			String nomeFornecedor = (String) obj[0];
			String nomeVendedor = (String) obj[1];

			resultados.add("Fornecedor: " + nomeFornecedor + "\tVendedor: "
					+ nomeVendedor);

		}

		return resultados;

	}

}
